home *** CD-ROM | disk | FTP | other *** search
Text File | 1997-04-17 | 52.9 KB | 1,170 lines |
- Version 1.31 January 31, 97
- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
-
- NNNN NNN 444 444 PPPPPPPPP AAAAAAAA SSSSSSSSSS SSSSSSSSSS
- NNNNN NNN 444 444 PPP PPP AAA AAA SSS SSS
- NNNNNNNNNN 444444444 PPPPPPPPP AAAAAAAAAA SSSSSSSSSS SSSSSSSSSS
- NNN NNNNN 444 PPP AAA AAA SSS SSS
- NNN NNNN 444 PPP AAA AAA SSSSSSSSSS SSSSSSSSSS
-
-
- Please send bug reports (or suggestions) to:
- Compuserve: 75600, 2274
- Internet: DCOLLINS@FASTLANE.NET
-
- You can find the latest versions at:
- Compuserve: forum NOVUSER FileName: N4PAxx.*
- Internet: web page http://www.fastlane.net/homepages/dcollins
-
-
- Please see NDS-LIST.TXT for information on more utilities.
-
- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
-
- Basic rules are:
-
- You need to run DS.NLM version 4.89a Aug 30,1995 or later.
-
- Verify that you set the TZ environment variable on your workstation.
- Example: SET TZ=CST6CDT for Central Standard Time.
-
- Verify that you have SET NWLANGUAGE=ENGLISH
-
- You should have your NLS and Unicode files properly installed. Normally,
- you can find these files under the NLS subdirectory on your C: drive,
- and also the SYS:\PUBLIC\NLS subdirectories.
-
- The utilities have been tested on:
- Server:
- Netware 4.10 (DS.NLM v4.89a or later)
- Netware 4.11.
- Workstation:
- DOS 5.0 - DOS 6.22 with Netware VLM 1.2 drivers,
- Windows 95 with Novell Client32.
- Windows 3.1x with VLM 1.2 drivers.
-
-
- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
- = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
-
-
- Application:
- ============
-
- This utility is designed for the Helpdesk staff to view network user
- information relating to security and the capability to 'reset' the user
- password. It is specifically designed for a Netware 4.10 network.
-
- It is composed of two parts:
- Server - N4PASS.NLM that will run on the server which will do the
- real work for searching for users, reading attribute names
- and values, and changing the user's password.
- Client - N4PASS.EXE that will run on the Helpdesk's workstation.
- It is Windows based, and is the 'frontend' for the tasks
- that the helpdesk wants done.
-
- Communication method:
-
- A common subdirectory that is used for transferring information
- between the server and the client. This method makes its 'protocal
- less' and 'platform less' since the Client piece can be running on
- a Macintosh, Unix, or via a smart email agent... running the standard
- IPX/SPX, TCP/IP or other protocals.
-
-
- Registration:
- =============
-
- This software is freeware. It is created to help network administrators
- 'empower' the helpdesk staff. Please be patient with any problems
- that you encounter with this utility.
- Here is a thought... if this utility has saved you alot of time, perhaps
- you can send me a company T-shirt, postcard or something.
-
- If you are interested in the source code, then please send $50 (US Dollars)
- to: N4PASS source code; 1216 Hilburn Ct; Irving, TX; 75060; USA
-
- N4PASS.EXE - written in MS Visual Basic 4.0 (16bit)
- N4PASS.NLM - written in Watcom C 9.0x with Novell SDK vol 4.
-
-
- Disclaimer:
- ===========
-
- Please apply all standard disclaimers here.
- Seriously, this utility is meant to help you... not destroy your
- environment or waste your user's time.
-
- This utility uses only standard API calls from official Novell SDK
- releases and is compiled using Microsoft Visual C/C++ version 1.5.
- Large Memory model.
-
- If you find bugs, then let me know. Otherwise, I can't fix them.
-
- If you wish to include any of these utilities found in this ZIP file
- in a publication, you must obtain written permission first. Thank You
-
-
- How to Install:
- ===============
-
- The below instructions assume:
- . Drive letter F: is pointing to the SYS:\ subdirectory on the same
- server that your helpdesk staff are located on. This same server
- will be running the N4PASS.NLM utility.
- . It is suggested that you do use the subdirectory name of SYS:\N4PASS
- unless your security policy or storage requirements require a different
- location. If using a different location, make the necessary path
- changes to all references below and in the N4PASS.CFG file.
- . Utilities are unpacked onto a diskette in Drive A:.
- . It is very highly suggested that the user account that N4Pass.NLM
- will use to login to the network is an admin-equivalent. If the
- account is not, then the account must have sufficient ACL to change
- user passwords and File System rights starting at the server's
- SYS:\N4PASS subdirectory.
- I believe, if the NLM account is not an Admin equal, then they
- will need:
- All objects rights except Supervisor.
- All property rights including Supervisor.
- Object trustees (ACL) grant only Read and Compare.
- Its simply alot better to have the NLM use an admin-equal account.
- For security... in summary:
- The account that the .NLM will use should be an admin-equal.
- The accounts that the Helpdesk staff use are 'normal' accounts.
- (no special ACL rights are needed)
-
-
- Make the appropiate changes in the commands below if your environment is
- different.
-
- 1. Copy the N4PASS utility to the network server.
-
- F:
- MD F:\N4PASS
- MD F:\N4PASS\PASSWORD
- COPY A:\N4PASS.NLM F:\N4PASS
- COPY A:\N4PASS.CFG F:\N4PASS
- COPY A:\N4PASS.EXE F:\N4PASS\PASSWORD
- COPY A:\N4PASS.EXE F:\N4PASS\PASSWORD\N4PASSVB.EXE
-
- 2. Setup security (trustee access rights) for the helpdesk staff.
-
- SYS:\N4PASS
- - No helpdesk staff should be able to 'read' from this
- subdirectory so it is suggested that you do not provide any
- trustee rights to this directory. Further, since a password
- is kept in the N4PASS.CFG in this directory, it is very
- strongly suggested that you verify that no one has read access.
- - A file named N4PASS.LOG will be created in this subdirectory
- by the N4PASS.NLM app.
-
- SYS:\N4PASS\PASSWORD
- - HelpDesk staff will be using this directory to 'execute' the
- N4PASS.EXE utility and it will also be used as a
- 'ScanDirectory' for communication between N4PASS.EXE
- running on the workstation and the N4PASS.NLM running on the
- server.
-
- Rights needed by helpdesk staff to this subdirectory are:
- Create - create inquire / password change requests.
- Read - execute n4pass.exe, and read results from N4PASS.NLM.
- Erase - erase the results when read.
- FileScan - your Windows app may need this.
- The command to setup trustee rights for a user is:
- RIGHTS SYS:\N4PASS\PASSWORD C R E F /NAME=HelpDeskUserObjectName
- - It is suggested that this subdirectory by 'FLAG'ged as 'Purge'
- immediate, so that the request/result file will be purged as
- soon as they are erased.
- The command to set this is: FLAG SYS:\N4PASS\PASSWORD P /DO
-
- 3. Configure the N4PASS.CFG file.
-
- In the SYS:\N4PASS subdirectory, there is a N4PASS.CFG file, that
- you will need to configure.
- Specifically, you will need to ensure that the settings for the
- Admin-equal and password are correct.
- Also, verify that you set the value for the 'Seed' between 0 and
- 10000. This same value will be used later when configuring the
- (client) Windows workstation running N4PASS.EXE.
-
- For additional security: (if you don't like setting the admin-equal
- object name and its password in the text file N4PASS.CFG.)
- - Set the 'network address restrictions' so that this account can
- be used only be the server network address only. The easiest
- method to do this is:
- Load N4pass.Nlm, wait for it to login, Load Monitor, select
- Connection Information, move the cursor to the account name
- that you are using, and press Enter. The network address
- should then be displayed.
-
- 4. At the : console prompt on the Netware 4.10 server.
-
- Type at this : console prompt:
-
- LOAD SYS:\N4PASS\N4PASS
-
- When loaded it should create a new 'process' screen called N4PASS.
- (BTW: Use CTRL-ESC to rotate thru the different Netware screens.)
-
- If are not using the SYS:\N4PASS subdirectory for the 'base' of the
- .NLM, then you will need to specify the subdirectory as the 1st
- parameter in the 'load' line. For example, if you want the
- N4PASS.NLM to load from the subdirectory VOL1:\NLM-UTIL, then you
- would use: LOAD VOL1:\NLM-UTIL\N4PASS VOL1:\NLM-UTIL
-
- 5. Setting up N4PASS.EXE on the Window's based workstation.
-
- Execute Windows 3.10 or later. You will need a NDS connection to
- the server. (Use VLMs or the Novell Client32 if using Windows95)
-
- Create a new program group in your preferred 'program group':
-
- Description: HelpDesk user Inquiry
- Command Line: F:\N4PASS\PASSWORD\N4PASS.EXE /S=SeedValue
- (SeedValue must the same value that you used in N4PASS.CFG)
- Working Directory: F:\N4PASS\PASSWORD
-
- Save the 'Program Items'.
-
- Command parameters:
- /D= specify scan directory. Normally, sys:\n4pass\password
- (you may have to use this parameter if client is Windows95)
- /TI= sets of 15seconds for 'time out' message. The default is 2,
- which equals 30 seconds. If your tree is large, or you receive
- alot of 'no response from search request' messages, then, you
- will need to increase this value.
- Valid range is from 1 to 5000.
- /S= Seed value. The value must match the seed setting in the
- n4pass.cfg file. If the value does not match the setting
- in the .cfg file, then, the new password for the 'resetted'
- user will not match what the N4Pass screen says. This will
- basically, yield in a 'Access Denied' on the user trying to
- login. You (Admin) will then need to look in the N4Pass.Log
- file, to see what the user's password was actually changed to.
- (So, verify that the Seed value is the same.)
- /Specify - allow the helpdesk to specify the new password.
- You must change the default setting for this in the n4pass.cfg
- file. (see AllowSpecifyNewPassword setting)
-
- 6. Miscellaneous items to check.
-
- Verify that you have 'Intruder Detection' turned on for the containers
- that your user accounts are in. If you do not, then it makes your
- system more open to 'brute force' password attack.
-
- 7. Installation is done.
-
- You will not need to UNLOAD/LOAD N4PASS.NLM unless you make changes
- to the N4PASS.CFG file. If you wish, you may want to add the LOAD
- line to your SYS:\SYSTEM\AUTOEXEC.NCF file.
-
- The helpdesk staff can now execute the N4PASS.EXE utility to view
- user information and issue password changes.
-
-
-
- N4PASS.EXE Notes: (Also, usefull info for the Helpdesk person)
- ===============================================================
-
- For the 'search' prompt, you can type in the 'short' name
- of the network user to search for. In other words, you do not need to
- type in the full network name of the user.
-
- Wildcard (*) is supported.
- For example, DCOL*, will return a list of all users with the
- network name starting with the letters DCOL.
- If you know the users last name, you can always use a search text
- such as *SMITH* to return a list of all users with the word 'Smith'
- in their (common) network name.
-
- The Helpdesk must type in their personal network password at the
- HelpDesk verify prompt when wanting to change the endusers password.
-
- When the Helpdesk staff, resets a enduser's password, it is meant as a
- temporary password. This is just like when you (as Admin) set a
- enduser's password, their password will expire, so that they will be
- prompted for a new password when they login.
- (One way to test this, is to do an inquire on the person after resetting
- their password, and you can see that their password expire date is set
- to an already past date.)
-
-
-
- How is the password calculated:
- ===============================
-
- The password display from a 'password change' request is not sent over
- the network wire between the server and the client. Instead, the client
- (N4PASS.EXE) and server (N4PASS.NLM) use a common calculation with
- multiple variables to create the password.
-
- The variables that go into a password are:
- 1. Month
- 2. Day
- 3. FileName of 'request' file.
- 4. Requester (helpdesk) object name.
- 5. User object name.
- 6. Seed Number.
- Variable #3 can be only found by a network snifer device on the network
- wire or another helpdesk workstation.
- Variable #6 is set by you when configuring N4PASS.EXE on the
- workstation and in the N4PASS.CFG (which noone should have read
- access too) it is 'relatively' safe.
- Also, since, the HelpDesk person should already have the user on the
- phone, and the user should be then logging in under the 'temporary'
- generated password and then changing to a permanent password, then
- the 'time of exposure' should be short.
-
- The password characters are composed of 0 thru 9 and A thru F.
-
-
- Futures: (planned)
- ==================
-
- Whats new in version 1.0:
-
- . When n4pass.nlm changes the user's password, it will also reset
- the Intruder Lockout.
-
- Whats new in version 1.1: Nov 31, 1995
-
- . Add a 'prefix' password for sites that need a greater than 5
- character password.
-
- Whats new in version 1.2: Dec 31, 1995
-
- . Added the capability of N4Pass to use a password file. With this
- additional values are possible when setting passwords.
- . Added 'Add 1 Grace Login' button.
- . It was found, that DSAPI.NLM needs to be loaded before loading
- N4PASS.NLM. The newer .NLM will autoload DSAPI.NLM and CLIB.NLM
- if not already loaded.
- . Increased the file-communication timeout to 15 seconds. Basically,
- the n4pass.exe will now wait for 15 seconds before it will display
- a dialog saying that it can not communicate with the n4pass.nlm.
-
- Whats new in version 1.25: March 31, 1996
-
- . Changed file handling done by N4PASS.NLM.
- . Added code to to force unload of N4PASS.NLM if timeout occurs during
- normal unload of N4PASS.NLM.
- . Added date/time stamp so that the admin can see exactly the time length
- consumed for different activities. DebugMode must be set to Yes.
- . Created Visual Basic N4PASSVB.EXE. This or the default N4PASS.EXE can
- be used by the admin. Download N4PA-VB.EXE from website.
- http://www.fastlane.net/homepages/dcollins
-
- Whats new in version 1.26: April 31, 1996
-
- . The TimeOut variable is now settable in the command line parameter
- when running the N4PASSVB.EXE client.
- (This setting is for 10k user and larger sites)
- . The admin can now specify in the N4PASS.CFG file by using the
- configuration noun ContainerSearchList, which containers can be
- searched (and all below) for users.
- (This setting is for 10k user and larger sites)
-
-
- Whats new in version 1.3: December 31, 1996
-
- . Removed N4PASS.EXE. Renamed N4PASSVB.EXE to N4PASS.EXE.
- . Add capability for the Helpdesk user to specify the new password,
- when doing a 'reset password' procedure.
- . Alias objects are now supported. Previous versions could not
- 'wildcard' search for alias objects.
- . Have added 'base object' checking. This means that the helpdesk
- can only specify objects that are a 'user' or an alias object
- to a 'user' object.
-
- Whats new in version 1.3: February 1, 1997
-
- . Fixed bug in reporting if the user was 'Intruder Lockout' or not.
- N4Pass.EXE (new) never reported that it was locked out.
- . Received a message that N4Pass.Exe does not work with MS NDS on
- Windows95. Hmm. I need to find out why. But, from what I heard
- the MS NDS does not support NDS very well, so, may have stumbled
- across something that MS NDS doesn't like.
-
- Whats new
-
- . ?
-
-
- Workstation Requirements:
- =========================
-
- . DOS 5.0 or later.
- . Novell VLM (network requestor) logged into a Netware 4.1 server.
- It must be a NDS (Netware Directory Services) connection.
- . Client (workstation) must run VLM 1.2 or later.
- N4Pass.EXE does appear to work on a Windows95 station with the
- Novell Client32 for Windows95 drivers installed.
- . Helpdesk staff must have a valid password for their account.
- (must not be blank)
- . The Windows 3.1, 3.11 or Windows95 workstation must be running the
- Netware drivers and be probably configured.
- . By default N4PASS.EXE will expect the proper unicode table files
- are located in the subdirectory named NLS under the current Windows
- subdirectory.
- . Basically, if you can run Novell's NWADMIN.EXE then you should be able
- run N4PASS.EXE.
- Note... however, that you will need to have the .DLL required for
- Visual Basic applications.
-
-
- Server Requirements:
- ====================
-
- . Run DS.NLM version 4.89a or later. (This is in DSENH.EXE)
- . This same server should have a 'replica' of the NDS tree on it.
- It is not a requirement but it will help speed up searches.
- . Server patches suggested.
- Note: As of 10/15/95, you should have at least applied DSENH.EXE,
- 410PT2.EXE, LOG412.EXE, RTRUP?.EXE. All of these files can be found
- in the Compuserve forum NWOSFILES's File library, and are new since the
- release of Netware 4.10. You may find that these files provide better
- performance in the NDS usage and may fix some problems with NWAdmin.
- . N4Pass.NLM must run on a Netware 4.10 or 4.11 server.
- Normally, you will run the .NLM on one server only in a NDS tree.
- If you have helpdesk staff located on a more than one server, then
- you may load additional copies on the other server so the helpdesk
- staff can run it on their 'home' server.
- . N4PASS.NLM consumes approximately 60K of server memory.
- . N4PASS.NLM will consume about .05% of CPU resource approximately
- every 2 seconds peaks.
- . Dec 96: I have found no problems with using N4PASS.NLM on a server
- running Novell InternetWare 4.11 or plain Netware 4.11.
-
-
- Limitations:
- ============
-
- Since it uses a file based method of communication and the contents
- are not encrypted, then it is possible for someone to intercept some
- keys and figure out the password.
- But, for this to happen, they must know the 'seed#' value on the
- Helpdesk workstation and a few other items.
- On this note, if you are using a password file, then only those that
- know what is in the password file will figure out the password.
-
- N4Pass.Exe and N4Pass.Nlm do not pass any actual passwords over the
- network wire. Also, since, only N4Pass.Nlm reads the N4Pass.Lst
- then the file contents are not transmitted over the network wire.
-
- The exception to the above paragraph, is that if you use the '/Specify'
- parameter on the N4pass.exe, and thus allow the helpdesk to specify
- the new password, then, a scrambled password is sent over the wire.
- This situation will pose a security problem if there is a sniffer on
- segment that the helpdesk is on, and the person's account being reset
- will not login soon after, so that they can assign themselves a real
- password. (The helpdesk's verify password is never sent over the
- wire)
-
-
-
- Thanks:
- =======
-
- Peter Kuo, who sent feedback about the beta release.
- Randy Cook, Novell developer support on Compuserve forum NDEVSUP.
- This utility is compiled using the Novell SDK volume 4.
-
-
- Required Modules for N4PASS.NLM:
- ================================
-
- CLIB.NLM must be loaded. If it is not loaded when you load n4pass.nlm,
- it should autoload the CLIB.NLM app.
- DSAPI.NLM must be loaded. If it is not loaded when you load n4pass.nlm,
- it should autoload the DSAPI.NLM app.
-
-
- Required Modules for N4PASS.EXE:
- ================================
-
- Windows DLLs (located in c:\windows\system) accessed by N4PASS.EXE.
-
- VB40016.DLL
- OC25.DLL
- OLE2.DLL
- TYPELIB.DLL
- OLE2DISP.DLL
- OLE2PROX.DLL
- OLE2CONV.DLL
- STORAGE.DLL
- COMPOBJ.DLL
- OLE2.REG
- OLE2NLS.DLL
- STDOLE.TLB
- SCP.DLL
- VAEN21.OLB
- CTL3DV2.DLL
-
- I have included these files in the N4PA-VB.ZIP file located at:
- http://www.fastlane.net/homepages/dcollins
-
- VB40016.DLL
- OC25.DLL
- VAEN21.OLB
- CTL3DV2.DLL
-
- In addition, the n4passvb.exe will need the following novell DLL
- files on your system. (If you have installed the Novell client, then
- you should already have the files in your c:\windows\system directory.)
-
- nwnet.dll
- nwlocale.dll
- nwcalls.dll
-
-
-
- WhoAmI:
- =======
-
- Darwin Collins, works at Dallas Area Rapid Transit in Dallas, Texas USA.
- Voice: 214-749-3022.
- Environment: 1k user base connected to Netware 4.10 servers.
-
- My job pays me to be a Network Administrator.
- I have been writing programs since 1980. My first published utility
- was called 'Graphic Writer' published in SoftSide in August 1982.
- You could find a variety of my earlier utilities published in books
- such as 'LAN Desktop Guide To Troubleshooting' by Rick Segal, and
- 'NetWare Unleashed Vol 1 and 2' from SAMS Publishing.
- My only commerical attempt, is a product called 'Office Logic Clerk',
- which is a MHS-compatible (SMF-70,SMF-71) super utility (Alphapaging,
- dlists, file librarian/requestor, ...) marketed by LAN-ACES Inc. in
- Houston, TX. 800-LAN-ACES. They have a email groupware product
- called Office Logic Email which is pretty neat!
-
-
- My standard NET.CFG file for VLM 1.20 drivers is:
- =================================================
-
- preferred server=HOME
- show dots = ON
- file handles = 60
- print header = 255
- print tail = 64
-
- Link Driver NE2000
- Protocol IPX 8137 ETHERNET_II
- Frame ETHERNET_II
- INT 15
- PORT 340
-
- NETWARE DOS REQUESTER
- SET STATION TIME = ON
- LOAD CONN TABLE LOW = ON
- CONNECTIONS = 8
- LARGE INTERNET PACKETS = ON
- SIGNATURE LEVEL = 1
- CACHE BUFFERS = 5
- CACHE BUFFER SIZE = 1436
- CACHE WRITES = ON
- TRUE COMMIT = OFF
- PB BUFFERS = 3
- PBURST READ WINDOW SIZE = 16
- FIRST NETWORK DRIVE = H
- SHOW DOTS = ON
- NAME CONTEXT = "O=HOME"
- FORCE FIRST NETWORK DRIVE = ON
- LOAD LOW REDIR = ON
- READ ONLY COMPATIBILITY = ON
- USE DEFAULTS = OFF
- VLM = CONN.VLM
- VLM = IPXNCP.VLM
- VLM = TRAN.VLM
- VLM = SECURITY.VLM
- VLM = NDS.VLM
- VLM = BIND.VLM
- VLM = NWP.VLM
- VLM = FIO.VLM
- VLM = GENERAL.VLM
- VLM = REDIR.VLM
- VLM = PRINT.VLM
- VLM = NETX.VLM
-
- [end]
-
- Below is a list of error codes from Novell SDK volume 4.
-
-
- SHELL_ERROR 0x8800
- VLM_ERROR 0x8800
- ALREADY_ATTACHED 0x8800 0
- - Attach attempted to server with valid, existing connection
- INVALID_CONNECTION 0x8801 1
- - Request attempted with invalid or non-attached connection handle
- DRIVE_IN_USE 0x8802 2
- - OS/2 only (NOT USED)
- CANT_ADD_CDS 0x8803 3
- - Map drive attempted but unable to add new current directory structure
- BAD_DRIVE_BASE 0x8804 4
- - Map drive attempted with invalid path specification
- NET_READ_ERROR 0x8805 5
- - Attempt to receive from the selected transport failed
- NET_RECV_ERROR 0x8805 5
- UNKNOWN_NET_ERROR 0x8806 6
- - Network send attempted with an un-specific network error
- SERVER_INVALID_SLOT 0x8807 7
- - Server request attempted with invalid server connection slot
- BAD_SERVER_SLOT 0x8807 7
- NO_SERVER_SLOTS 0x8808 8
- - Attach attempted to server with no connection slots available
- NET_WRITE_ERROR 0x8809 9
- - Attempt to send on the selected transport failed
- NET_SEND_ERROR 0x8809 9
- SERVER_NO_ROUTE 0x880A 10
- - Attempted to find route to server where no route exists
- BAD_LOCAL_TARGET 0x880B 11 - OS/2 only
- TOO_MANY_REQ_FRAGS 0x880C 12
- - Attempted request with too many request fragments specified
- CONNECT_LIST_OVERFLOW 0x880D 13
- BUFFER_OVERFLOW 0x880E 14
- - Attempt to receive more data than the reply buffer had room for
- NO_CONN_TO_SERVER 0x880F 15
- NO_CONNECTION_TO_SERVER 0x880F 15
- - Attempt to get connection for a server not connected
- NO_ROUTER_FOUND 0x8810 16 - OS/2 only
- BAD_FUNC_ERROR 0x8811 17
- INVALID_SHELL_CALL 0x8811 17
- - Attempted function call to non- existent or illegal function
- NOT_SAME_CONNECTION 0x8830 48
- - Internal server request attempted accross different server connections
- PRIMARY_CONNECTION_NOT_SET 0x8831 49
- - Attempt to retrieve default connection with no primary connection set
- NO_PRIMARY_SET 0x8831 49
- NO_CAPTURE_SET 0x8832 50
- NO_CAPTURE_IN_PROGRESS 0x8832 50
- - Capture information requested on port with no capture in progress
- BAD_BUFFER_LENGTH 0x8833 51
- INVALID_BUFFER_LENGTH 0x8833 51
- - Used to indicate length which caller requested on a GetDNC or SetDNC was too large
- NO_USER_NAME 0x8834 52
- NO_NETWARE_PRINT_SPOOLER 0x8835 53
- - Capture requested without having the local print spooler installed
- INVALID_PARAMETER 0x8836 54
- - Attempted function with an invalid function parameter specified
- CONFIG_FILE_OPEN_FAILED 0x8837 55 - OS/2 only
- NO_CONFIG_FILE 0x8838 56 - OS/2 only
- CONFIG_FILE_READ_FAILED 0x8839 57 - OS/2 only
- CONFIG_LINE_TOO_LONG 0x883A 58 - OS/2 only
- CONFIG_LINES_IGNORED 0x883B 59 - OS/2 only
- NOT_MY_RESOURCE 0x883C 60
- - Attempted request made with a parameter using foriegn resource
- DAEMON_INSTALLED 0x883D 61 - OS/2 only
- SPOOLER_INSTALLED 0x883E 62
- - Attempted load of print spooler with print spooler already installed
- CONN_TABLE_FULL 0x883F 63
- CONNECTION_TABLE_FULL 0x883F 63
- - Attempted to allocate a connection handle with no more local connection table entries
- CONFIG_SECTION_NOT_FOUND 0x8840 64 - OS/2 only
- BAD_TRAN_TYPE 0x8841 65
- INVALID_TRANSPORT_TYPE 0x8841 65
- - Attempted function on a connection with an invalid transport selected
- TDS_TAG_IN_USE 0x8842 66 - OS/2 only
- TDS_OUT_OF_MEMORY 0x8843 67 - OS/2 only
- TDS_INVALID_TAG 0x8844 68
- - Attempted TDS function with invalid tag
- TDS_WRITE_TRUNCATED 0x8845 69
- - Attempted TDS write with buffer that exceeded buffer
- NO_DIRECTORY_SERVICE_CONNECTION 0x8846 70
- SERVICE_BUSY 0x8846 70
- - Attempted request made to partially asynchronous function in busy state
- NO_SERVER_ERROR 0x8847 71
- - Attempted connect failed to find any servers responding
- BAD_VLM_ERROR 0x8848 72
- - Attempted function call to non-existant or not-loaded overlay
- NETWORK_DRIVE_IN_USE 0x8849 73
- - Attempted map to network drive that was already mapped
- LOCAL_DRIVE_IN_USE 0x884A 74
- - Attempted map to local drive that was in use
- NO_DRIVES_AVAILABLE 0x884B 75
- - Attempted map to next available drive when none were available
- DEVICE_NOT_REDIRECTED 0x884C 76
- - The device is not redirected
- NO_MORE_SFT_ENTRIES 0x884D 77
- - Maximum number of files was reached
- UNLOAD_ERROR 0x884E 78
- - Attempted unload failed
- IN_USE_ERROR 0x884F 79
- - Attempted re-use of already in use connection entry
- TOO_MANY_REP_FRAGS 0x8850 80
- - Attempted request with too many reply fragments specified
- TABLE_FULL 0x8851 81
- - Attempted to add a name into the name table after it was full
- SOCKET_NOT_OPEN 0x8852 82
- - Listen was posted on unopened socket
- MEM_MGR_ERROR 0x8853 83
- - Attempted enhanced memory operation failed
- SFT3_ERROR 0x8854 84
- - An SFT3 switch occured mid-transfer
- PREFERRED_NOT_FOUND 0x8855 85
- - the preferred directory server was not established but another directory server was returned
- DEVICE_NOT_RECOGNIZED 0x8856 86
- - used to determine if the device is not used by VISE so pass it on to the next redirector, if any.
- BAD_NET_TYPE 0x8857 87
- - the network type (Bind/NDS) does not match the server version
- ERROR_OPENING_FILE 0x8858 88
- - generic open failure error, invalid path, access denied, etc..
- NO_PREFERRED_SPECIFIED 0x8859 89
- - no preferred name specified
- ERROR_OPENING_SOCKET 0x885A 90
- - error opening a socket
- SHELL_FAILURE 0x88FF
- VLM_FAILURE 0x88FF
-
-
- Server Errors
-
- ERR_INSUFFICIENT_SPACE 0x8901 001
- ERR_BUFFER_TOO_SMALL 0x8977 119
- ERR_VOLUME_FLAG_NOT_SET 0x8978 120 the service requested, not avail. on the selected vol.
- ERR_NO_ITEMS_FOUND 0x8979 121
- ERR_CONN_ALREADY_TEMP 0x897a 122
- ERR_CONN_ALREADY_LOGGED_IN 0x897b 123
- ERR_CONN_NOT_AUTHENTICATED 0x897c 124
- ERR_CONN_NOT_LOGGED_IN 0x897d 125
- NCP_BOUNDARY_CHECK_FAILED 0x897e 126
- ERR_LOCK_WAITING 0x897f 127
- ERR_LOCK_FAIL 0x8980 128
- FILE_IN_USE_ERROR 0x8980 128
- NO_MORE_FILE_HANDLES 0x8981 129
- NO_OPEN_PRIVILEGES 0x8982 130
- IO_ERROR_NETWORK_DISK 0x8983 131
- NO_CREATE_PRIVILEGES 0x8984 132
- NO_CREATE_DELETE_PRIVILEGES 0x8985 133
- CREATE_FILE_EXISTS_READ_ONLY 0x8986 134
- WILD_CARDS_IN_CREATE_FILE_NAME 0x8987 135
- INVALID_FILE_HANDLE 0x8988 136
- NO_SEARCH_PRIVILEGES 0x8989 137
- NO_DELETE_PRIVILEGES 0x898A 138
- NO_RENAME_PRIVILEGES 0x898B 139
- NO_MODIFY_PRIVILEGES 0x898C 140
- SOME_FILES_AFFECTED_IN_USE 0x898D 141
- NO_FILES_AFFECTED_IN_USE 0x898E 142
- SOME_FILES_AFFECTED_READ_ONLY 0x898F 143
- NO_FILES_AFFECTED_READ_ONLY 0x8990 144
- SOME_FILES_RENAMED_NAME_EXISTS 0x8991 145
- NO_FILES_RENAMED_NAME_EXISTS 0x8992 146
- NO_READ_PRIVILEGES 0x8993 147
- NO_WRITE_PRIVILEGES_OR_READONLY 0x8994 148
- FILE_DETACHED 0x8995 149
- SERVER_OUT_OF_MEMORY 0x8996 150
- ERR_TARGET_NOT_A_SUBDIRECTORY 0x8986 150 can be changed later (note written by server people).
- NO_DISK_SPACE_FOR_SPOOL_FILE 0x8997 151
- VOLUME_DOES_NOT_EXIST 0x8998 152
- DIRECTORY_FULL 0x8999 153
- RENAMING_ACROSS_VOLUMES 0x899A 154
- BAD_DIRECTORY_HANDLE 0x899B 155
- INVALID_PATH 0x899C 156
- NO_MORE_TRUSTEES 0x899C 156
- NO_MORE_DIRECTORY_HANDLES 0x899D 157
- INVALID_FILENAME 0x899E 158
- DIRECTORY_ACTIVE 0x899F 159
- DIRECTORY_NOT_EMPTY 0x89A0 160
- DIRECTORY_IO_ERROR 0x89A1 161
- READ_FILE_WITH_RECORD_LOCKED 0x89A2 162
- ERR_TRANSACTION_RESTARTED 0x89A3 163
- ERR_RENAME_DIR_INVALID 0x89A4 164
- ERR_INVALID_OPENCREATE_MODE 0x89A5 165
- ERR_ALREADY_IN_USE 0x89A6 166
- ERR_INVALID_RESOURCE_TAG 0x89A7 167
- ERR_ACCESS_DENIED 0x89A8 168
- INVALID_DATA_STREAM 0x89BE 190
- INVALID_NAME_SPACE 0x89BF 191
- NO_ACCOUNTING_PRIVILEGES 0x89C0 192
- LOGIN_DENIED_NO_ACCOUNT_BALANCE 0x89C1 193
- LOGIN_DENIED_NO_CREDIT 0x89C2 194
- ERR_TOO_MANY_HOLDS 0x89C3 195
- ACCOUNTING_DISABLED 0x89C4 196
- INTRUDER_DETECTION_LOCK 0x89C5 197
- NO_CONSOLE_OPERATOR 0x89C6 198
- NO_CONSOLE_PRIVILEGES 0x89C6 198
- ERR_Q_IO_FAILURE 0x89D0 208
- ERR_NO_QUEUE 0x89D1 209
- ERR_NO_Q_SERVER 0x89D2 210
- ERR_NO_Q_RIGHTS 0x89D3 211
- ERR_Q_FULL 0x89D4 212
- ERR_NO_Q_JOB 0x89D5 213
- ERR_NO_Q_JOB_RIGHTS 0x89D6 214
- ERR_Q_IN_SERVICE 0x89D7 215
- PASSWORD_NOT_UNIQUE 0x89D7 215
- ERR_Q_NOT_ACTIVE 0x89D8 216
- PASSWORD_TOO_SHORT 0x89D8 216
- ERR_Q_STN_NOT_SERVER 0x89D9 217
- LOGIN_DENIED_NO_CONNECTION 0x89D9 217
- ERR_MAXIMUM_LOGINS_EXCEEDED 0x89D9 217
- ERR_Q_HALTED 0x89DA 218
- UNAUTHORIZED_LOGIN_TIME 0x89DA 218
- UNAUTHORIZED_LOGIN_STATION 0x89DB 219
- ERR_Q_MAX_SERVERS 0x89DB 219
- ACCOUNT_DISABLED 0x89DC 220
- PASSWORD_HAS_EXPIRED_NO_GRACE 0x89DE 222
- PASSWORD_HAS_EXPIRED 0x89DF 223
- E_NO_MORE_USERS 0x89E7 231
- NOT_ITEM_PROPERTY 0x89E8 232
- WRITE_PROPERTY_TO_GROUP 0x89E8 232
- MEMBER_ALREADY_EXISTS 0x89E9 233
- NO_SUCH_MEMBER 0x89EA 234
- NOT_GROUP_PROPERTY 0x89EB 235
- NO_SUCH_SEGMENT 0x89EC 236
- PROPERTY_ALREADY_EXISTS 0x89ED 237
- OBJECT_ALREADY_EXISTS 0x89EE 238
- INVALID_NAME 0x89EF 239
- WILD_CARD_NOT_ALLOWED 0x89F0 240
- INVALID_BINDERY_SECURITY 0x89F1 241
- NO_OBJECT_READ_PRIVILEGE 0x89F2 242
- NO_OBJECT_RENAME_PRIVILEGE 0x89F3 243
- NO_OBJECT_DELETE_PRIVILEGE 0x89F4 244
- NO_OBJECT_CREATE_PRIVILEGE 0x89F5 245
- NO_PROPERTY_DELETE_PRIVILEGE 0x89F6 246
- NO_PROPERTY_CREATE_PRIVILEGE 0x89F7 247
- NO_PROPERTY_WRITE_PRIVILEGE 0x89F8 248
- NO_FREE_CONNECTION_SLOTS 0x89F9 249
- NO_PROPERTY_READ_PRIVILEGE 0x89F9 249
- NO_MORE_SERVER_SLOTS 0x89FA 250
- TEMP_REMAP_ERROR 0x89FA 250
- INVALID_PARAMETERS 0x89FB 251
- NO_SUCH_PROPERTY 0x89FB 251
- ERR_NCP_NOT_SUPPORTED 0x89FB 251
- INTERNET_PACKET_REQT_CANCELED 0x89FC 252
- UNKNOWN_FILE_SERVER 0x89FC 252
- MESSAGE_QUEUE_FULL 0x89FC 252
- NO_SUCH_OBJECT 0x89FC 252
- LOCK_COLLISION 0x89FD 253
- BAD_STATION_NUMBER 0x89FD 253
- INVALID_PACKET_LENGTH 0x89FD 253
- UNKNOWN_REQUEST 0x89FD 253
- BINDERY_LOCKED 0x89FE 254
- TRUSTEE_NOT_FOUND 0x89FE 254
- DIRECTORY_LOCKED 0x89FE 254
- INVALID_SEMAPHORE_NAME_LENGTH 0x89FE 254
- PACKET_NOT_DELIVERABLE 0x89FE 254
- SERVER_BINDERY_LOCKED 0x89FE 254
- SOCKET_TABLE_FULL 0x89FE 254
- SPOOL_DIRECTORY_ERROR 0x89FE 254
- SUPERVISOR_HAS_DISABLED_LOGIN 0x89FE 254
- TIMEOUT_FAILURE 0x89FE 254
- BAD_PRINTER_ERROR 0x89FF 255
- BAD_RECORD_OFFSET 0x89FF 255
- CLOSE_FCB_ERROR 0x89FF 255
- FILE_EXTENSION_ERROR 0x89FF 255
- FILE_NAME_ERROR 0x89FF 255
- HARDWARE_FAILURE 0x89FF 255
- INVALID_DRIVE_NUMBER 0x89FF 255
- DOS_INVALID_DRIVE 0x000F 255
- INVALID_INITIAL_SEMAPHORE_VALUE 0x89FF 255
- INVALID_SEMAPHORE_HANDLE 0x89FF 255
- IO_BOUND_ERROR 0x89FF 255
- NO_FILES_FOUND_ERROR 0x89FF 255
- NO_RESPONSE_FROM_SERVER 0x89FF 255
- NO_SUCH_OBJECT_OR_BAD_PASSWORD 0x89FF 255
- PATH_NOT_LOCATABLE 0x89FF 255
- QUEUE_FULL_ERROR 0x89FF 255
- REQUEST_NOT_OUTSTANDING 0x89FF 255
- SOCKET_ALREADY_OPEN 0x89FF 255
- LOCK_ERROR 0x89FF 255
-
-
- ERR_INSUFFICIENT_MEMORY -150 0xFFFFFF6A, OS ERR_NO_ALLOC_SPACE is 0x96
- ERR_REQUEST_UNKNOWN -251 0xFFFFFF05, OS ERR_UNKNOWN_REQUEST is 0xFB
- ERR_OF_SOME_SORT -255 0xFFFFFF01, many OS errors are originally 0xFF
-
- -301 to -399 are returned by the directory services client library
- ERR_NOT_ENOUGH_MEMORY -301 0xFFFFFED3
- ERR_BAD_KEY -302 0xFFFFFED2
- ERR_BAD_CONTEXT -303 0xFFFFFED1
- ERR_BUFFER_FULL -304 0xFFFFFED0
- ERR_LIST_EMPTY -305 0xFFFFFECF
- ERR_BAD_SYNTAX -306 0xFFFFFECE
- ERR_BUFFER_EMPTY -307 0xFFFFFECD
- ERR_BAD_VERB -308 0xFFFFFECC
- ERR_EXPECTED_IDENTIFIER -309 0xFFFFFECB
- ERR_EXPECTED_EQUALS -310 0xFFFFFECA
- ERR_ATTR_TYPE_EXPECTED -311 0xFFFFFEC9
- ERR_ATTR_TYPE_NOT_EXPECTED -312 0xFFFFFEC8
- ERR_FILTER_TREE_EMPTY -313 0xFFFFFEC7
- ERR_INVALID_OBJECT_NAME -314 0xFFFFFEC6
- ERR_EXPECTED_RDN_DELIMITER -315 0xFFFFFEC5
- ERR_TOO_MANY_TOKENS -316 0xFFFFFEC4
- ERR_INCONSISTENT_MULTIAVA -317 0xFFFFFEC3
- ERR_COUNTRY_NAME_TOO_LONG -318 0xFFFFFEC2
- ERR_SYSTEM_ERROR -319 0xFFFFFEC1
- ERR_CANT_ADD_ROOT -320 0xFFFFFEC0
- ERR_UNABLE_TO_ATTACH -321 0xFFFFFEBF
- ERR_INVALID_HANDLE -322 0xFFFFFEBE
- ERR_BUFFER_ZERO_LENGTH -323 0xFFFFFEBD
- ERR_INVALID_REPLICA_TYPE -324 0xFFFFFEBC
- ERR_INVALID_ATTR_SYNTAX -325 0xFFFFFEBB
- ERR_INVALID_FILTER_SYNTAX -326 0xFFFFFEBA
- ERR_CONTEXT_CREATION -328 0xFFFFFEB8
- ERR_INVALID_UNION_TAG -329 0xFFFFFEB7
- ERR_INVALID_SERVER_RESPONSE -330 0xFFFFFEB6
- ERR_NULL_POINTER -331 0xFFFFFEB5
- ERR_NO_SERVER_FOUND -332 0xFFFFFEB4
- ERR_NO_CONNECTION -333 0xFFFFFEB3
- ERR_RDN_TOO_LONG -334 0xFFFFFEB2
- ERR_DUPLICATE_TYPE -335 0xFFFFFEB1
- ERR_DATA_STORE_FAILURE -336 0xFFFFFEB0
- ERR_NOT_LOGGED_IN -337 0xFFFFFEAF
- ERR_INVALID_PASSWORD_CHARS -338 0xFFFFFEAE
- ERR_FAILED_SERVER_AUTHENT -339 0xFFFFFEAD
- ERR_TRANSPORT -340 0xFFFFFEAC
- ERR_NO_SUCH_SYNTAX -341 0xFFFFFEAB
- ERR_INVALID_DS_NAME -342 0xFFFFFEAA
- ERR_ATTR_NAME_TOO_LONG -343 0xFFFFFEA9
- ERR_INVALID_TDS -344 0xFFFFFEA8
- ERR_INVALID_DS_VERSION -345 0xFFFFFEA7
- ERR_UNICODE_TRANSLATION -346 0xFFFFFEA6
- ERR_SCHEMA_NAME_TOO_LONG -347 0xFFFFFEA5
- ERR_UNICODE_FILE_NOT_FOUND -348 0xFFFFFEA4
- ERR_UNICODE_ALREADY_LOADED -349 0xFFFFFEA3
- ERR_NOT_CONTEXT_OWNER -350 0xFFFFFEA2
- ERR_ATTEMPT_TO_AUTHENTICATE_0 -351 0xFFFFFEA1
- ERR_NO_WRITABLE_REPLICAS -352 0xFFFFFEA0
- ERR_DN_TOO_LONG -353 0xFFFFFE9F
- ERR_RENAME_NOT_ALLOWED -354 0xFFFFFE9E
-
- -601 to -699 are returned by the directory services agent in the server
- ERR_NO_SUCH_ENTRY -601 0xFFFFFDA7
- ERR_NO_SUCH_VALUE -602 0xFFFFFDA6
- ERR_NO_SUCH_ATTRIBUTE -603 0xFFFFFDA5
- ERR_NO_SUCH_CLASS -604 0xFFFFFDA4
- ERR_NO_SUCH_PARTITION -605 0xFFFFFDA3
- ERR_ENTRY_ALREADY_EXISTS -606 0xFFFFFDA2
- ERR_NOT_EFFECTIVE_CLASS -607 0xFFFFFDA1
- ERR_ILLEGAL_ATTRIBUTE -608 0xFFFFFDA0
- ERR_MISSING_MANDATORY -609 0xFFFFFD9F
- ERR_ILLEGAL_DS_NAME -610 0xFFFFFD9E
- ERR_ILLEGAL_CONTAINMENT -611 0xFFFFFD9D
- ERR_CANT_HAVE_MULTIPLE_VALUES -612 0xFFFFFD9C
- ERR_SYNTAX_VIOLATION -613 0xFFFFFD9B
- ERR_DUPLICATE_VALUE -614 0xFFFFFD9A
- ERR_ATTRIBUTE_ALREADY_EXISTS -615 0xFFFFFD99
- ERR_MAXIMUM_ENTRIES_EXIST -616 0xFFFFFD98
- ERR_DATABASE_FORMAT -617 0xFFFFFD97
- ERR_INCONSISTENT_DATABASE -618 0xFFFFFD96
- ERR_INVALID_COMPARISON -619 0xFFFFFD95
- ERR_COMPARISON_FAILED -620 0xFFFFFD94
- ERR_TRANSACTIONS_DISABLED -621 0xFFFFFD93
- ERR_INVALID_TRANSPORT -622 0xFFFFFD92
- ERR_SYNTAX_INVALID_IN_NAME -623 0xFFFFFD91
- ERR_REPLICA_ALREADY_EXISTS -624 0xFFFFFD90
- ERR_TRANSPORT_FAILURE -625 0xFFFFFD8F
- ERR_ALL_REFERRALS_FAILED -626 0xFFFFFD8E
- ERR_CANT_REMOVE_NAMING_VALUE -627 0xFFFFFD8D
- ERR_OBJECT_CLASS_VIOLATION -628 0xFFFFFD8C
- ERR_ENTRY_IS_NOT_LEAF -629 0xFFFFFD8B
- ERR_DIFFERENT_TREE -630 0xFFFFFD8A
- ERR_ILLEGAL_REPLICA_TYPE -631 0xFFFFFD89
- ERR_SYSTEM_FAILURE -632 0xFFFFFD88
- ERR_INVALID_ENTRY_FOR_ROOT -633 0xFFFFFD87
- ERR_NO_REFERRALS -634 0xFFFFFD86
- ERR_REMOTE_FAILURE -635 0xFFFFFD85
- ERR_UNREACHABLE_SERVER -636 0XFFFFFD84
- ERR_PREVIOUS_MOVE_IN_PROGRESS -637 0XFFFFFD83
- ERR_NO_CHARACTER_MAPPING -638 0XFFFFFD82
- ERR_INCOMPLETE_AUTHENTICATION -639 0XFFFFFD81
- ERR_INVALID_CERTIFICATE -640 0xFFFFFD80
- ERR_INVALID_REQUEST -641 0xFFFFFD7F
- ERR_INVALID_ITERATION -642 0xFFFFFD7E
- ERR_SCHEMA_IS_NONREMOVABLE -643 0xFFFFFD7D
- ERR_SCHEMA_IS_IN_USE -644 0xFFFFFD7C
- ERR_CLASS_ALREADY_EXISTS -645 0xFFFFFD7B
- ERR_BAD_NAMING_ATTRIBUTES -646 0xFFFFFD7A
- ERR_NOT_ROOT_PARTITION -647 0xFFFFFD79
- ERR_INSUFFICIENT_STACK -648 0xFFFFFD78
- ERR_INSUFFICIENT_BUFFER -649 0xFFFFFD77
- ERR_AMBIGUOUS_CONTAINMENT -650 0xFFFFFD76
- ERR_AMBIGUOUS_NAMING -651 0xFFFFFD75
- ERR_DUPLICATE_MANDATORY -652 0xFFFFFD74
- ERR_DUPLICATE_OPTIONAL -653 0xFFFFFD73
- ERR_PARTITION_BUSY -654 0XFFFFFD72
- ERR_MULTIPLE_REPLICAS -655 0xFFFFFD71
- ERR_CRUCIAL_REPLICA -656 0xFFFFFD70
- ERR_SCHEMA_SYNC_IN_PROGRESS -657 0xFFFFFD6F
- ERR_SKULK_IN_PROGRESS -658 0xFFFFFD6E
- ERR_TIME_NOT_SYNCHRONIZED -659 0xFFFFFD6D
- ERR_RECORD_IN_USE -660 0xFFFFFD6C
- ERR_DS_VOLUME_NOT_MOUNTED -661 0xFFFFFD6B
- ERR_DS_VOLUME_IO_FAILURE -662 0xFFFFFD6A
- ERR_DS_LOCKED -663 0xFFFFFD69
- ERR_OLD_EPOCH -664 0xFFFFFD68
- ERR_NEW_EPOCH -665 0xFFFFFD67
- ERR_INCOMPATIBLE_DS_VERSION -666 0xFFFFFD66
- ERR_PARTITION_ROOT -667 0xFFFFFD65
- ERR_ENTRY_NOT_CONTAINER -668 0xFFFFFD64
- ERR_FAILED_AUTHENTICATION -669 0xFFFFFD63
- ERR_INVALID_CONTEXT -670 0xFFFFFD62
- ERR_NO_SUCH_PARENT -671 0xFFFFFD61
- ERR_NO_ACCESS -672 0xFFFFFD60
- ERR_REPLICA_NOT_ON -673 0xFFFFFD5F
- ERR_INVALID_NAME_SERVICE -674 0xFFFFFD5E
- ERR_INVALID_TASK -675 0xFFFFFD5D
- ERR_INVALID_CONN_HANDLE -676 0xFFFFFD5C
- ERR_INVALID_IDENTITY -677 0xFFFFFD5B
- ERR_DUPLICATE_ACL -678 0xFFFFFD5A
- ERR_PARTITION_ALREADY_EXISTS -679 0xFFFFFD59
- ERR_TRANSPORT_MODIFIED -680 0xFFFFFD58
- ERR_ALIAS_OF_AN_ALIAS -681 0xFFFFFD57
- ERR_AUDITING_FAILED -682 0xFFFFFD56
- ERR_INVALID_API_VERSION -683 0xFFFFFD55
- ERR_SECURE_NCP_VIOLATION -684 0xFFFFFD54
- ERR_MOVE_IN_PROGRESS -685 0xFFFFFD53
- ERR_NOT_LEAF_PARTITION -686 0xFFFFFD52
- ERR_CANNOT_ABORT -687 0xFFFFFD51
- ERR_CACHE_OVERFLOW -688 0xFFFFFD50
- ERR_INVALID_SUBORDINATE_COUNT -689 0xFFFFFD4F
- ERR_INVALID_RDN -690 0xFFFFFD4E
- ERR_MOD_TIME_NOT_CURRENT -691 0xFFFFFD4D
- ERR_INCORRECT_BASE_CLASS -692 0xFFFFFD4C
- ERR_MISSING_REFERENCE -693 0xFFFFFD4B
- ERR_LOST_ENTRY -694 0xFFFFFD4A
- ERR_AGENT_ALREADY_REGISTERED -695 0xFFFFFD49
- ERR_DS_LOADER_BUSY -696 0xFFFFFD48
- ERR_DS_CANNOT_RELOAD -697 0xFFFFFD47
- ERR_REPLICA_IN_SKULK -698 0xFFFFFD46
- ERR_FATAL -699 0xFFFFFD45
- ERR_OBSOLETE_API -700 0xFFFFFD44
- ERR_SYNCHRONIZATION_DISABLED -701 0xFFFFFD43
- ERR_INVALID_PARAMETER -702 0xFFFFFD42
- ERR_DUPLICATE_TEMPLATE -703 0xFFFFFD41
- ERR_NO_MASTER_REPLICA -704 0xFFFFFD40
- ERR_DUPLICATE_CONTAINMENT -705 0xFFFFFD3F
-
- ---------------------------------------------------------------------------
- * -001 to -255 are OS Errors returned through directory services
-
-
- DSERR_INSUFFICIENT_SPACE -001 FFFFFFFF
- DSERR_BUFFER_TOO_SMALL -119 FFFFFF89
- DSERR_VOLUME_FLAG_NOT_SET -120 FFFFFF88
- DSERR_NO_ITEMS_FOUND -121 FFFFFF87
- DSERR_CONN_ALREADY_TEMPORARY -122 FFFFFF86
- DSERR_CONN_ALREADY_LOGGED_IN -123 FFFFFF85
- DSERR_CONN_NOT_AUTHENTICATED -124 FFFFFF84
- DSERR_CONN_NOT_LOGGED_IN -125 FFFFFF83
- DSERR_NCP_BOUNDARY_CHECK_FAILED -126 FFFFFF82
- DSERR_LOCK_WAITING -127 FFFFFF81
- DSERR_LOCK_FAIL -128 FFFFFF80
- DSERR_OUT_OF_HANDLES -129 FFFFFF7F
- DSERR_NO_OPEN_PRIVILEGE -130 FFFFFF7E
- DSERR_HARD_IO_ERROR -131 FFFFFF7D
- DSERR_NO_CREATE_PRIVILEGE -132 FFFFFF7C
- DSERR_NO_CREATE_DELETE_PRIV -133 FFFFFF7B
- DSERR_R_O_CREATE_FILE -134 FFFFFF7A
- DSERR_CREATE_FILE_INVALID_NAME -135 FFFFFF79
- DSERR_INVALID_FILE_HANDLE -136 FFFFFF78
- DSERR_NO_SEARCH_PRIVILEGE -137 FFFFFF77
- DSERR_NO_DELETE_PRIVILEGE -138 FFFFFF76
- DSERR_NO_RENAME_PRIVILEGE -139 FFFFFF75
- DSERR_NO_SET_PRIVILEGE -140 FFFFFF74
- DSERR_SOME_FILES_IN_USE -141 FFFFFF73
- DSERR_ALL_FILES_IN_USE -142 FFFFFF72
- DSERR_SOME_READ_ONLY -143 FFFFFF71
- DSERR_ALL_READ_ONLY -144 FFFFFF70
- DSERR_SOME_NAMES_EXIST -145 FFFFFF6F
- DSERR_ALL_NAMES_EXIST -146 FFFFFF6E
- DSERR_NO_READ_PRIVILEGE -147 FFFFFF6D
- DSERR_NO_WRITE_PRIVILEGE -148 FFFFFF6C
- DSERR_FILE_DETACHED -149 FFFFFF6B
- DSERR_NO_ALLOC_SPACE -150 FFFFFF6A
- DSERR_TARGET_NOT_A_SUBDIR -150 FFFFFF6A
- DSERR_NO_SPOOL_SPACE -151 FFFFFF69
- DSERR_INVALID_VOLUME -152 FFFFFF68
- DSERR_DIRECTORY_FULL -153 FFFFFF67
- DSERR_RENAME_ACROSS_VOLUME -154 FFFFFF66
- DSERR_BAD_DIR_HANDLE -155 FFFFFF65
- DSERR_INVALID_PATH -156 FFFFFF64
- DSERR_NO_SUCH_EXTENSION -156 FFFFFF64
- DSERR_NO_DIR_HANDLES -157 FFFFFF63
- DSERR_BAD_FILE_NAME -158 FFFFFF62
- DSERR_DIRECTORY_ACTIVE -159 FFFFFF61
- DSERR_DIRECTORY_NOT_EMPTY -160 FFFFFF60
- DSERR_DIRECTORY_IO_ERROR -161 FFFFFF5F
- DSERR_IO_LOCKED -162 FFFFFF5E
- DSERR_TRANSACTION_RESTARTED -163 FFFFFF5D
- DSERR_RENAME_DIR_INVALID -164 FFFFFF5C
- DSERR_INVALID_OPENCREATE_MODE -165 FFFFFF5B
- DSERR_ALREADY_IN_USE -166 FFFFFF5A
- DSERR_INVALID_RESOURCE_TAG -167 FFFFFF59
- DSERR_ACCESS_DENIED -168 FFFFFF58
- DSERR_INVALID_DATA_STREAM -190 FFFFFF42
- DSERR_INVALID_NAME_SPACE -191 FFFFFF41
- DSERR_NO_ACCOUNTING_PRIVILEGES -192 FFFFFF40
- DSERR_NO_ACCOUNT_BALANCE -193 FFFFFF3F
- DSERR_CREDIT_LIMIT_EXCEEDED -194 FFFFFF3E
- DSERR_TOO_MANY_HOLDS -195 FFFFFF3D
- DSERR_ACCOUNTING_DISABLED -196 FFFFFF3C
- DSERR_LOGIN_LOCKOUT -197 FFFFFF3B
- DSERR_NO_CONSOLE_RIGHTS -198 FFFFFF3A
- DSERR_Q_IO_FAILURE -208 FFFFFF30
- DSERR_NO_QUEUE -209 FFFFFF2F
- DSERR_NO_Q_SERVER -210 FFFFFF2E
- DSERR_NO_Q_RIGHTS -211 FFFFFF2D
- DSERR_Q_FULL -212 FFFFFF2C
- DSERR_NO_Q_JOB -213 FFFFFF2B
- DSERR_NO_Q_JOB_RIGHTS -214 FFFFFF2A
- DSERR_UNENCRYPTED_NOT_ALLOWED -214 FFFFFF2A
- DSERR_Q_IN_SERVICE -215 FFFFFF29
- DSERR_DUPLICATE_PASSWORD -215 FFFFFF29
- DSERR_Q_NOT_ACTIVE -216 FFFFFF28
- DSERR_PASSWORD_TOO_SHORT -216 FFFFFF28
- DSERR_Q_STN_NOT_SERVER -217 FFFFFF27
- DSERR_MAXIMUM_LOGINS_EXCEEDED -217 FFFFFF27
- DSERR_Q_HALTED -218 FFFFFF26
- DSERR_BAD_LOGIN_TIME -218 FFFFFF26
- DSERR_Q_MAX_SERVERS -219 FFFFFF25
- DSERR_NODE_ADDRESS_VIOLATION -219 FFFFFF25
- DSERR_LOG_ACCOUNT_EXPIRED -220 FFFFFF24
- DSERR_BAD_PASSWORD -222 FFFFFF22
- DSERR_PASSWORD_EXPIRED -223 FFFFFF21
- DSERR_NO_LOGIN_CONN_AVAILABLE -224 FFFFFF20
- DSERR_WRITE_TO_GROUP_PROPERTY -232 FFFFFF18
- DSERR_MEMBER_ALREADY_EXISTS -233 FFFFFF17
- DSERR_NO_SUCH_MEMBER -234 FFFFFF16
- DSERR_PROPERTY_NOT_GROUP -235 FFFFFF15
- DSERR_NO_SUCH_VALUE_SET -236 FFFFFF14
- DSERR_PROPERTY_ALREADY_EXISTS -237 FFFFFF13
- DSERR_OBJECT_ALREADY_EXISTS -238 FFFFFF12
- DSERR_ILLEGAL_NAME -239 FFFFFF11
- DSERR_ILLEGAL_WILDCARD -240 FFFFFF10
- DSERR_BINDERY_SECURITY -241 FFFFFF0F
- DSERR_NO_OBJECT_READ_RIGHTS -242 FFFFFF0E
- DSERR_NO_OBJECT_RENAME_RIGHTS -243 FFFFFF0D
- DSERR_NO_OBJECT_DELETE_RIGHTS -244 FFFFFF0C
- DSERR_NO_OBJECT_CREATE_RIGHTS -245 FFFFFF0B
- DSERR_NO_PROPERTY_DELETE_RIGHTS -246 FFFFFF0A
- DSERR_NO_PROPERTY_CREATE_RIGHTS -247 FFFFFF09
- DSERR_NO_PROPERTY_WRITE_RIGHTS -248 FFFFFF08
- DSERR_NO_PROPERTY_READ_RIGHTS -249 FFFFFF07
- DSERR_TEMP_REMAP -250 FFFFFF06
- DSERR_UNKNOWN_REQUEST -251 FFFFFF05
- DSERR_NO_SUCH_PROPERTY -251 FFFFFF05
- DSERR_MESSAGE_QUEUE_FULL -252 FFFFFF04
- DSERR_TARGET_ALREADY_HAS_MSG -252 FFFFFF04
- DSERR_NO_SUCH_OBJECT -252 FFFFFF04
- DSERR_BAD_STATION_NUMBER -253 FFFFFF03
- DSERR_BINDERY_LOCKED -254 FFFFFF02
- DSERR_DIR_LOCKED -254 FFFFFF02
- DSERR_SPOOL_DELETE -254 FFFFFF02
- DSERR_TRUSTEE_NOT_FOUND -254 FFFFFF02
- DSERR_HARD_FAILURE -255 FFFFFF01
- DSERR_FILE_NAME -255 FFFFFF01
- DSERR_FILE_EXISTS -255 FFFFFF01
- DSERR_CLOSE_FCB -255 FFFFFF01
- DSERR_IO_BOUND -255 FFFFFF01
- DSERR_NO_SPOOL_FILE -255 FFFFFF01
- DSERR_BAD_SPOOL_PRINTER -255 FFFFFF01
- DSERR_BAD_PARAMETER -255 FFFFFF01
- DSERR_NO_FILES_FOUND -255 FFFFFF01
- DSERR_NO_TRUSTEE_CHANGE_PRIV -255 FFFFFF01
- DSERR_TARGET_NOT_LOGGED_IN -255 FFFFFF01
- DSERR_TARGET_NOT_ACCEPTING_MSGS -255 FFFFFF01
- DSERR_MUST_FORCE_DOWN -255 FFFFFF01
-
-